There are some signal processing applications where it may be desirable to multiply a first signal, which may be received as an input analogue signal, by a value represented by a second signal. For instance, in some audio applications for voice processing, it may be desirable to apply variable weightings to a number of input analogue signals derived from a microphone, prior to some downstream processing which may involve digital processing.
Analogue circuit techniques for multiplying analogue signals are known, for example using non-linearities in the electrical characteristics of active devices carefully biased to operate over an appropriate range. However, as analogue circuitry for multiplication may suffer from device mismatches, thermal drift, power supply noise and the like, and may require relatively complex arrangement to tune operation for a range of operating conditions and manufacturing tolerances, conventionally such multiplication may be implemented digitally. Thus the first signal, and if necessary the second signal, may be converted to digital signals and multiplication implemented as part of the digital processing.
Digital multiplication of two signals can be readily implemented. However, in general, digital processing can involve a relatively large number of circuit nodes potentially changing between high and low voltages each sample period, which inevitably involves a certain power consumption and heat generation.
In some applications, for example for battery powered devices, power consumption is a significant concern, especially for any processes that may be expected to be operational relatively frequently.